﻿using IntelligentAgriculture.Contracts.Dto.Input;
using IntelligentAgriculture.Contracts.Dto.Output;
using IntelligentAgriculture.Domain.Entity;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace IntelligentAgriculture.Contracts.Interface
{
    public interface IRoleService
    {
        /// <summary>
        /// 获取所有角色
        /// </summary>
        /// <returns></returns>
        Task<PageOutput<Role>> GetRoles(RoleInput input);
        /// <summary>
        /// 添加角色
        /// </summary>
        /// <param name="input"> 角色信息 </param>
        /// <returns></returns>
        Task<int> AddRole(AddRoleInput input);
        /// <summary>
        /// 删除角色
        /// </summary>
        /// <param name="id"> 角色ID </param>
        /// <returns></returns>
        Task<int> DeleteRole(int id);
        /// <summary>
        /// 获取角色选择列表
        /// </summary>
        /// <returns></returns>
        Task<List<RoleSelectOutput>> GetRolesSelect();
    }
}
